//****************************************************
// Porman Project 
// Filename: CRenderWindow.h
// Date: 2011/01/12
// Author: KengYu Lin
// Modify:
//****************************************************
#ifndef _CRENDERWINDOW_H
#define _CRENDERWINDOW_H
#include "CRenderTarget.h"

namespace Porman
{

namespace GL
{
    class CRenderCanvas;
}//End GL

namespace RS
{

class CRenderWindow : public CRenderTarget
{
public:
    CRenderWindow( const std::string& sName, unsigned int uiHash );
    virtual ~CRenderWindow( void );

    PRS_API void initial( GL::CRenderCanvas* pCanvas );
    PRS_API virtual void getMetrics( int& iWidth, int& iHeight );
    PRS_API virtual int getWidth( void );
    PRS_API virtual int getHeight( void );

    GL::CRenderCanvas* getRenderCanvas( void ) { return m_pCanvas; }
    virtual void swapBuffer( void );

protected:
    GL::CRenderCanvas* m_pCanvas;
};

}//End RS

}//End namespace Porman

#endif